These teachings relate generally to providing data to a remote site, and, more particularly, to methods and systems of using a gateway to provide data to a remote site.
Communications over the internet require a data transfer between two machines. A local machine requests a connection on a specified port number on the remote machine. A dynamically allocated port on the local machine then connects to the specified port on the remote machine, and the communication can proceed.
The communication itself may be TCP based, where two machines are specifically connected over a dedicated channel (such as in a telephone call), or it could be a UDP transfer, where one machine sends data and is not aware if or when the other machine receives it (analogous to the postal service). Either of these methods make the use of what are called “ports” via which the data transfer is made on a single shared physical network line.
On the local end, typically, the machine will connect via a router. This router performs multiple functions, but one function can be to protect the internal local network from network snoopers and hackers. It does this by selectively opening or closing ports that are accessible from the outside world into the local network.
A hacker can make use of an open port to gain access to a machine within the local network. If however, a router is set up so that it does not allow incoming requests to some port numbers, the hacker will be unable to gain access. Such an arrangement is called as a connection via a firewall.
For this reason, it is desirable that as few incoming ports as minimally required are allowed into the local network. On the other hand outgoing ports are safe, since the data that is being transferred is initiated from the local end and is being sent out.
On the remote side, sophisticated security solutions can be used to make lessen the impact of unauthorized access into the system, making use of more sophisticated firewalls and heuristic rules to determine if a requested access is legitimate or not. This level of equipment installation is impractical for home owners or small business owners to use on the local end.
If a data source, for example, a camera, is placed at a local site, it would be desirable to be able to watch the output of the data source, for example, video from the camera, from a remote site. Typically, a port would need to be opened on the local firewall, which would then allow a remote monitoring request to be passed to the data source, and the output from the data source be retrieved from it. This introduces an insecurity, that is, opening a local port on the firewall/router.
There is a need for methods and systems for providing data to a remote site that do not require opening a local port on the firewall/router.